<@pp.dropOutputFile/>
<#-- iterate table list-->
<#list doc.tables as table>

<#-- generate package name -->
<#assign package = doc.groupid?replace(".", "/")> 
<#assign package = package + "/" + doc.artifactid?replace(".", "/")>
<#assign package = package + "/" + table.moduleid?replace(".", "/")>
<#assign fileName = table.name?cap_first>
<@pp.changeOutputFile name="/main/java/" + package + "/dao/" + fileName + "Dao.java"/>
/*
 * File name : ${fileName}.java ${doc.date}
 * Copyright ${doc.copyright}. All rights reserved.
 */
package ${package?replace("/", ".")}.dao;

import java.util.Map;
import java.util.List;
import com.xust.common.Outcome;
import ${package?replace("/", ".")}.domain.${fileName};

/**
 * ${fileName}Dao
 * @author ${doc.author}
 * @version ${doc.version}, ${doc.date}
 */
public interface ${fileName}Dao {
	
	///////////////////// Create
	public Outcome create(${fileName} newValue);
	
	///////////////////// Retrieve
	public Outcome get(Integer id);
	public Outcome size(Map<String, Object> params);
	public Outcome getPage(Map<String, Object> params);

	///////////////////// Update
	public Outcome update(${fileName} newValue);
	
	///////////////////// Delete
	public Outcome deleteItems(List<Integer> ids);
	public Outcome deleteAll();
}
</#list>